home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Ahoy 1988 April
/
Ahoy_Magazine_88-04_1988_Double_L.d64
/
Time Subway
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
13KB
|
296 lines
10 poke56,62:clr:poke53280,.:poke53281,.:printchr$(8)chr$(142):x=rnd(ti)
20 poke53248+21,255:poke53248+21,.:sys65418:gosub1010:pl=49847:a=52224:b=52480
30 forx=atob:readd:pokex,d:next:a=49152:b=49970:forx=atob:readd:pokex,d:next
40 a=248*64:b=a+7*64:forx=atob:readd:pokex,d:next
50 print"[154]based on a concept by lynwood brooks"
60 forx=.to63:poke832+x,.:poke896+x,255:poke960+x,255:next:poke864,16
70 forx=2to63step3:poke896+x,.:next:poke864,16:poke867,16
80 print"[152]programmed by cleveland m. blakemore";:syspl,.,16:gosub1100
90 print"[152][213][195][201][157][157][157][194] [194][157][157][157][202][195][203]":printtab(32)"[145][145][145][213][195][201][157][157][157][194] [194][157][157][157][202][195][203]"
100 syspl,10,9:print"[154]press fire to begin"
110 a$(.)="[194]":a$(1)="[206]":a$(2)="[195]":a$(3)="[205]":x=.
120 sys52224,1,16,21:print""tab(4)a$(x)tab(33)a$(x):x=x+1+(x=3)*4
130 on-((peek(56320)and16)>.)goto120:print"[147]"
140 dim v,p,y,j,r,u,e,d,h,w,i,l,sp,n,lx,ly,g,m,s,s$(47),d(1),t(47),sc(3)
150 v=53248:j=56320:sc=52224:m=1988:s=54272:d(.)=-1:d(1)=1:n=209:u=1:e=2:g=4
160 h=64:l=100:lx=172:ly=200:i=.025:sp=1337
170 forx=.to3:readsc(x):next:reada$(.),a$(1)
180 forx=1to45:readt(x),s$(x):next
190 xs=49634:ys=49647:tg=49660:fl=49673:cf=49692:md=49711:ss=49755:sb=49774
200 deffnf(x)=-((peek(j)and16)>.):deffnm(x)=(peek(v+21)and16)=.
210 deffnp(x)=peek(v+16)and239
220 sys49805,255,.
230 sysxs,41,21:sysys,123,214:systg,6,14:sysfl,0,0,0:syscf,16,31,14:sysss,4,3
240 poke2040,248:poke2044,13:poke2045,14:poke2046,15:poke2047,248
250 pokev+28,143:pokev+37,1:pokev+38,11:pokev+39,10:pokev+43,1
260 pokev+44,.:pokev+45,.:pokev+46,9:pokev+10,160:pokev+11,115
270 pokev+12,160:pokev+13,103:pokev+14,172:pokev+15,200:pokev+23,32:pokev+29,96
280 y=m:d=.:w=.:gosub990
290 gosub1170:gosub1260:gosub1390
300 p=129:a$="99599592":gosub1420
310 pokev+16,.:pokev+10,168:pokev+11,115:pokev,172:pokev+1,87
320 pokev+21,33:pokev+27,223:gosub1300:pokev+27,222:gosub1370:gosub1320
330 x=(y=t(hx)):pokev+21,65+(x<>.)*-128+(x=.)*-14:r=(x=.)*-.8
340 fora=.to9:a=peek(v+30):a=peek(v+31):next:sysfl,0,1,1:sys49152
350 p=129:a$="111455808101101101101101101":gosub1420:fora=.to3:sysss,a,1:next
360 rem main loop for subway platform
370 syssc,d,e,7:ifrnd(u)>rthensysmd,rnd(u)*4+u,rnd(u)*8+u
380 ifxtheniffnm(.)thenpokev+16,fnp(.):pokev+8,lx:pokev+9,ly:pokev+21,n
390 w=w+i:a=peek(v+30):b=peek(v+31):ifw>lor((aandu)=uand(aandh)=.)then410
400 onfnf(.)goto370:on((bandu)=u)*-u+(a=h+u)*-egoto550,820:goto370
410 forx=.to3:sysss,x,.:next:pokes+6,96:pokes+24,15:pokes+4,33
420 forx=.to255step5:pokes,x:pokes+1,255-x:next:pokes+4,32
430 forx=.to96:pokev+32,xand15:next
440 on-(a=129ora=145)goto510:on-(w<l)goto540:syspl,9,9:poke198,.
450 rem time distortion reaches 100%
460 print"time distortion 100% !!"
470 p=33:ford=.to4:a$="121205":gosub1420:next
480 printtab(12)"play again (y/n)[154]"
490 wait198,1:geta$:ifa$="y"thenrun
500 poke679,.:sys679
510 rem found doctor
520 print"[147]":syspl,2,9:print"[150]you have stopped the crazed doctor!!"
530 poke198,.:p=33:ford=.to2:a$="251331421502421502":gosub1420:next:goto470
540 gosub990:y=int(rnd(u)*m)+u:syscf,16,30,14:pokev+17,11:goto880
550 forx=.to3:sysss,x,.:next:pokev+21,.
560 print"[147][158][176]";:forx=.to35:print"[195]";:next:print"[174]"
570 forx=.to20:printtab(1)"[194]"tab(38)"[194]":next
580 print"[173]";:forx=.to35:print"[195]";:next:print"[189]"
590 syspl,7,22:print"[152]time distortion factor:";:gosub960:print"%"
600 syspl,2,2:print"[158] space-time continuum subway system ":syspl,10,4
610 print"station: ";:a$=str$(y):gosub940:print" a.d.":x=fre(.)
620 p=33:a$="081112113211":gosub1420
630 a=.:forx=1to45:ify=t(x)thena=x
640 next:ifa=.then670
650 syspl,3,6:print"[155]significant event this time frame:"
660 syspl,20-(len(s$(a))/2),8:print""s$(a):goto680
670 syspl,2,6:print"[151]no significant event at this station"
680 syspl,2,10:print"[150]there is a human presence registered"
690 syspl,7,11:print"in the vicinity of the era"
700 syspl,9,12:print"marked by the event..."
710 p=17:a$="401401401401":gosub1420
720 printtab(20-(len(s$(hx))/2))""s$(hx):a$=str$(t(hx)):printtab(15)"[152]";
730 gosub940:print" a.d."
740 syspl,8,17:print""a$(.):syspl,32,17:printa$(1)
750 syspl,15,18:print"[152]s u b w a y":syspl,15,19:print"[155]m o t i o n"
760 a=usr(.)
770 ifa=3thend=1:syspl,32,17:print"[150]"a$(1):syspl,8,17:print""a$(.)
780 ifa=7thend=.:syspl,32,17:print""a$(1):syspl,8,17:print"[150]"a$(.)
790 ifa=3ora=7thenp=33:a$="991":gosub1420
800 on-((peek(j)and16)>.)goto760:p=17:a$="424242":gosub1420:gosub1170:goto330
810 rem subway time travel
820 sysfl,0,1,0:pokev,172:pokev+1,124:p=33:a$="50":gosub1420
830 syssc,d,2,7:fora=.to20:next:ifpeek(sp)<>186orpeek(sp+u)<>210then830
840 gosub1390
850 pokev+21,peek(v+21)or32:gosub1300:gosub1340:pokev+27,peek(v+27)or1
860 gosub1320:pokev+21,peek(v+21)and254
870 forx=90to10step-1:syssc,d,2,7:forb=.tox:next:next:pokev+17,11
880 pokev+21,.:print"[147][151]";:fora=.to3:gosub1230:gosub1240:next:print:gosub1100
890 print"[151]";:fora=.to3:gosub1230:gosub1240:next:pokev+17,27:a=9:b=14
900 syssc,d,a,b:y=y+d(d)+(y=mandd=u)*(m+u)+(y=.andd=.)*-(m+u):a$=str$(y)
910 w=w+i:on-(w>l)goto440:print""tab(17)"";:gosub940:onfnf(.)goto900
920 goto290
930 rem right justified year
940 printright$(" "+(right$(a$,len(a$)-u)),g);:x=fre(.):return
950 rem right justified time distortion
960 a$=str$(int(w)):printright$("000"+(right$(a$,len(a$)-1)),3);
970 x=fre(.):return
980 rem random location in time
990 hx=int((rnd(1)*44)+1):return
1000 rem title
1010 print"[147]"tab(4)"every second counts aboard the..."
1020 printtab(12)"[176][178][174] [178] [176][174][176][174] [178][195][174]"
1030 printtab(12)"[155] [194] [194] [194][173][189][194] [171][179] "
1040 printtab(12)"[155] [177] [177] [177] [177] [177][195][189]"
1050 printtab(10)"[152][176][195][174][178] [178][178][195][174][178] [178][176][195][174][174] [176]"
1060 printtab(10)"[151][173][195][174][194] [194][171][195][179][194][176][174][194][171][195][179][173][178][189]"
1070 printtab(10)"[151][173][195][189][173][195][189][177][195][189][173][189][173][189][177] [177] [177] "
1080 printtab(12)"[154]please stand by!"
1090 printtab(4)"[155](c) 1988 cleveland m. blakemore":return
1100 print"[155]";:forx=.to39:printchr$(183);:next
1110 print" [213][195][195][195][195][195][201] [213][195][195][195][195][195][201] [213][195][195][195][195][195][201] [213][195][195][195][195][195][201] [152]::::::[155] ";
1120 print" [202][195][195][195][195][195][203] [202][195][195][195][195][195][203] [202][195][195][195][195][195][203] [202][195][195][195][195][195][203] [152]:[151][176][195][195][174][152]:[155] ";
1130 print"[151][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][152]:[151][173][195][195][189][152]:[151][178]";
1140 print"[177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][152]:[151] [215][215] [152]:[151][177]";
1150 print"[155][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][152]:[151][210][210][210][210][152]:[155][176]":return
1160 rem subway platform
1170 pokev+17,11:poke646,sc(yand3)
1180 print"[147]";:gosub1230:gosub1240:print"";:gosub1240:gosub1230:forx=.to6
1190 print"[207][208]"spc(36)"[207][208][208][207]"spc(36)"[208][207]";:next:gosub1230:print"[157]";:gosub1230
1200 poke2023,208:print"";:gosub1100
1210 syspl,34,13:print"[158][161][151][176][195][174][157][157][157][157][158][161][151][194]i[194][157][157][157][157][158][161][151][194]n[194][157][157][157][157][158][161][151][194]f[194][157][157][157][157][158][161][151][194]o[194]";
1220 print"[157][157][157][157][158][161][151][173][195][189]":syspl,17,8:print" ":pokev+17,27:return
1230 forx=.to19:print"[207][208]";:next:return
1240 forx=.to19:print"[208][207]";:next:return
1250 rem setup crowd of alien nasties
1260 forx=.to3:sysss,x,0:next:pokev+16,.:forx=1to3:sysmd,x,rnd(1)*8+1:next
1270 forx=1to3:pokev+x*2,x*85:pokev+x*2+1,214
1280 syssb,x,249+int(rnd(1)*3)*2,1:pokev+39+x,(rnd(1)*6)+2:next:return
1290 rem subway door up
1300 forx=115to82step-1:pokev+11,x:fora=.to30:nexta,x:return
1310 rem subway door down
1320 forx=82to115:pokev+11,x:fora=.to30:nexta,x:return
1330 rem professor in
1340 syscf,16,30,14:forx=124to87step-1:pokev+1,x:fora=.to30:nexta
1350 next:return
1360 rem professor out
1370 forx=87to124:pokev+1,x:fora=.to30:nexta,x:syscf,16,31,14:return
1380 rem slow door down to ready position
1390 forx=10to105+(d=u)*-8:forb=.tox:next:syssc,d,2,7:next
1400 p=33:a$="500":gosub1420:return
1410 rem sid string tone generator
1420 pokes+6,96:pokes+24,15
1430 fora=1to18step3
1440 pokes+1,val(mid$(a$,a,2)):pokes+4,p
1450 forb=1to80*val(mid$(a$,a+2,1)):next
1460 pokes+4,p-1:next:a=fre(.):return
1470 rem scroll data
1480 data 32,241,183,138,74,8,32,241,183,224,25,144
1490 data 2,162,24,142,246,7,32,241,183,224,25,144
1500 data 2,162,24,142,247,7,138,174,246,7,172,247
1510 data 7,56,237,246,7,176,8,73,255,174,247,7
1520 data 172,246,7,133,254,40,8,144,3,200,152,170
1530 data 189,203,204,133,98,189,229,204,133,97,40,8
1540 data 144,8,233,1,133,97,176,2,198,98,165,98
1550 data 41,3,9,4,40,8,32,134,204,40,8,165
1560 data 97,144,10,105,39,133,97,144,12,230,98,176
1570 data 8,233,39,133,97,176,2,198,98,165,98,41
1580 data 3,9,216,40,8,32,134,204,198,254,16,206
1590 data 40,96,133,98,144,3,76,171,204,160,,177
1600 data 97,170,160,39,177,97,72,138,145,97,104,170
1610 data 136,16,245,24,165,97,105,40,133,97,144,2
1620 data 230,98,96,56,165,97,233,40,133,97,176,2
1630 data 198,98,160,40,177,97,170,160,1,177,97,72
1640 data 138,145,97,104,170,200,192,41,208,243,96,4
1650 data 4,4,4,4,4,4,5,5,5,5,5,5
1660 data 6,6,6,6,6,6,6,7,7,7,7,7
1670 data 7,,40,80,120,160,200,240,24,64,104,144
1680 data 184,224,8,48,88,128,168,208,248,32,72,112
1690 data 152,192,232,,.
1700 rem interrupt data
1710 data 120,169,33,141,20,3,169,192,141,21,3,169,154,141,17,3,169,194
1720 data 141,18,3,173,36,195,133,251,169,1,141,37,195,88,96,198,251,208
1730 data 44,173,36,195,133,251,173,38,195,240,34,162,7,189,197,194,45,39
1740 data 195,240,21,189,1,195,24,125,17,195,157,248,7,222,17,195,16,6
1750 data 189,9,195,157,17,195,202,16,224,173,40,195,208,3,76,140,192,162
1760 data .,173,41,195,240,9,169,1,77,37,195,141,37,195,170,189,,220
1770 data 41,15,133,253,169,15,56,229,253,168,185,25,195,240,17,141,168,2
1780 data 168,185,196,194,61,48,195,240,5,138,168,32,162,192,169,7,141,167
1790 data 2,172,167,2,185,241,194,240,6,141,168,2,32,162,192,76,46,193
1800 data 185,197,194,45,50,195,208,16,173,168,2,10,170,189,205,194,8,152
1810 data 10,170,40,76,192,192,152,10,170,189,223,194,48,26,240,45,185,249
1820 data 194,24,125,,208,157,,208,144,33,185,197,194,77,16,208,141,16
1830 data 208,76,241,192,189,,208,56,249,249,194,157,,208,176,9,185,197
1840 data 194,77,16,208,141,16,208,185,197,194,45,50,195,208,18,173,168,2
1850 data 10,170,232,189,205,194,8,152,10,170,232,40,76,18,193,152,10,170
1860 data 232,189,223,194,48,15,240,23,185,249,194,24,125,,208,157,,208
1870 data 76,45,193,189,,208,56,249,249,194,157,,208,96,206,167,2,48
1880 data 3,76,145,192,162,7,142,167,2,172,167,2,152,10,170,185,197,194
1890 data 45,42,195,208,3,76,215,193,185,197,194,45,16,208,208,18,189,.
1900 data 208,56,205,44,195,176,56,173,44,195,157,,208,76,117,193,189,.
1910 data 208,56,205,45,195,144,38,173,45,195,157,,208,185,197,194,45,43
1920 data 195,240,12,169,255,56,249,197,194,45,21,208,141,21,208,189,223,194
1930 data 240,7,73,255,9,1,157,223,194,232,189,,208,56,205,46,195,176
1940 data 9,173,46,195,157,,208,76,183,193,189,,208,56,205,47,195,144
1950 data 38,173,47,195,157,,208,185,197,194,45,43,195,240,12,169,255,56
1960 data 249,197,194,45,21,208,141,21,208,189,223,194,240,7,73,255,9,1
1970 data 157,223,194,206,167,2,48,3,76,59,193,76,49,234,32,155,183,142
1980 data 44,195,32,155,183,142,45,195,96,32,155,183,142,46,195,32,155,183
1990 data 142,47,195,96,32,155,183,142,36,195,32,155,183,142,39,195,96,32
2000 data 155,183,142,41,195,32,155,183,142,38,195,32,155,183,142,40,195,96
2010 data 32,155,183,142,43,195,32,155,183,142,42,195,32,155,183,142,50,195
2020 data 96,32,155,183,138,41,7,72,32,155,183,104,168,56,224,9,144,2
2030 data 162,,138,153,241,194,152,10,168,138,10,170,189,205,194,153,223,194
2040 data 200,232,189,205,194,153,223,194,96,32,155,183,138,41,7,72,32,155
2050 data 183,104,168,138,41,15,153,249,194,96,32,155,183,138,41,7,72,32
2060 data 155,183,104,168,138,153,1,195,152,72,32,155,183,104,168,138,153,9
2070 data 195,153,17,195,96,32,155,183,142,48,195,32,155,183,142,49,195,96
2080 data 32,170,177,152,41,1,170,189,,220,41,15,133,253,169,15,56,229
2090 data 253,168,185,25,195,168,169,,108,5,,32,155,183,138,72,32,155
2100 data 183,104,168,24,76,240,255,1,2,4,8,16,32,64,128,,,.
2110 data 255,1,255,1,,1,1,,1,255,1,255,,255,255,,,.
2120 data .,,,,,,,,,,,,,,,,,.
2130 data .,,,,,1,1,1,1,1,1,1,1,,,,,.
2140 data .,,,1,1,1,1,1,1,1,1,,,,,,,.
2150 data .,,1,5,,7,8,6,,3,2,4,8,1,1,255,1,1
2160 data 255,,24,65,50,230,255,255,252
2170 rem sprite data
2180 data0,85,,,123,,,106
2190 data0,,170,,,170,,.
2200 data245,,3,85,64,13,117,80
2210 data53,85,84,215,119,213,211,85
2220 data77,211,117,77,211,85,77,211
2230 data117,77,211,85,77,171,117,74
2240 data131,85,98,3,195,192,3,195
2250 data192,3,195,192,15,195,240,.
2260 data0,250,,3,247,128,3,253
2270 data128,3,255,128,3,170,128,15
2280 data170,160,58,255,168,234,255,170
2290 data239,170,186,227,187,142,227,170
2300 data142,87,170,142,83,170,142,23
2310 data170,149,58,174,165,56,3,212
2320 data56,,232,20,,232,84,.
2330 data232,,,212,63,255,213,.
2340 data0,250,,3,247,128,3,253
2350 data128,3,255,128,3,170,128,15
2360 data170,160,58,255,168,234,255,170
2370 data239,170,186,227,187,142,227,170
2380 data142,227,170,149,227,170,133,87
2390 data170,148,90,174,160,22,3,224
2400 data58,,224,58,,80,58,.
2410 data84,21,,,85,255,252,.
2420 data0,,,3,105,128,14,170
2430 data160,14,170,160,15,125,224,13
2440 data215,96,3,170,128,14,170,160
2450 data58,170,168,235,234,186,192,234
2460 data142,240,234,130,195,170,162,243
2470 data163,172,11,163,224,35,128,224
2480 data35,128,224,163,128,224,15,160
2490 data224,12,131,232,63,255,187,.
2500 data0,,,3,105,128,14,170
2510 data160,14,125,160,15,255,224,13
2520 data215,96,3,170,128,14,170,160
2530 data58,170,168,235,234,190,240,234
2540 data130,192,234,142,195,170,162,243
2550 data163,172,11,163,160,11,128,224
2560 data35,128,224,35,128,224,131,131
2570 data232,14,160,200,63,191,255,.
2580 data0,170,,3,157,128,3,191
2590 data128,3,191,128,3,191,128,15
2600 data190,,15,170,129,15,170,161
2610 data14,170,169,58,170,169,235,234
2620 data173,248,234,174,248,234,174,248
2630 data255,234,32,234,136,,234,128
2640 data3,234,160,3,170,160,15,170
2650 data168,14,170,168,254,170,171,14
2660 data0,,,,170,,3,157
2670 data128,3,191,128,3,191,128,3
2680 data191,128,15,190,,15,170,129
2690 data15,170,161,14,170,169,58,170
2700 data169,235,234,173,248,234,174,248
2710 data234,174,248,255,234,32,234,136
2720 data0,234,128,3,234,160,3,170
2730 data160,15,170,168,254,170,171,255,.
2740 rem subway platform colors
2750 data 11,4,9,6
2760 rem control arrows
2770 data"[169][157][157][169] [157][157][157][157][157][146][223] [157][157][157][157][146][223]","[223][157][157][157][157] [223][157][157][157][157][157] [146][169][157][157][169]"
2780 rem time crossroads
2790 data0,jesus of nazareth,60,alexandrian steam engine,79,vesuvius erupts
2800 data143,ptolemy's egocentric solar system,400,visigoths overrun rome
2810 data450,alexandria library burns,476,dark ages begin,540,birth of muhammed
2820 data700,pueblo indians,770,age of charlemagne,1000,leif ericcson's voyage
2830 data1066,william the conquerer,1067,bayeaux tapestry
2840 data1200,crusaders sack constantinople,1215,magna carta
2850 data1348,black plague of europe,1454,gutenberg's printing press
2860 data1495,renaissance begins,1512,michelangelo paints sistine chapel
2870 data1519,cortes & montezuma,1580,drake circles globe,1620,mayflower sails
2880 data1685,newton's law,1691,salem witch hunt,1752,ben franklin's kite
2890 data1776,american revolution,1793,cotton gin,1803,monroe doctrine,1861
2900 datacivil war,1912,titantic sinks,1914,world war i,1930,great depression
2910 data1937,hindenburg disaster,1939,world war ii,1945,hiroshima
2920 data1948,transistor patented,1954,bannister's 4 minute mile,1961
2930 datacuban missile crisis,1969,moon walk,1973,watergate,1976
2940 datamao tsetung's death,1978,test tube baby,1982,commodore 64 released
2950 data1984,ahoy magazine created,1988,us/ussr arms treaty